home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / mod0001.arc / ROMDOOR.DOC < prev    next >
Text File  |  1992-02-19  |  14KB  |  349 lines

  1.  
  2.                        * CD ROM LOCAL/REMOTE DOOR *
  3.                (C) Jim Snowden, 1991.  All rights reserved.
  4.                         Helix Software Foundation
  5.  
  6.  
  7. * What it is *
  8.  
  9.    This program allows the user to search, unpack specified groups of files,
  10.    typically on a CD-ROM.  It handles global and group searching for 
  11.    keywords.  ANSI and ASCII modes are supported.  Both remote and
  12.    local use is supported.  Remote use is intended for BBS sysops who
  13.    want to let users access a CD-ROM they own.  Local use is great
  14.    for everyone!
  15.  
  16.  
  17.    ANSI/ASCII Support
  18.  
  19.    The door is told whether a user wants ANSI via the command line
  20.    switch -A<n>.  If <n> is 1, all system text files that are 
  21.    displayed (help files, intro, etc) a .ANS extension will be
  22.    searched for first.  If a .ANS file is not found then the door
  23.    will look for a .ASC file and display it.  If the user does not
  24.    have ANSI, .ASC files will always be displayed.  If the -A switch
  25.    is not on the command line, the program will then use the
  26.    ANSI_DEFAULT item in the config file.
  27.  
  28.    
  29.    Transfering Files
  30.  
  31.    The main impetus for writing this door was due to the fact that
  32.    I did not want to add umpteen-million groups of files to my BBS 
  33.    but still wanted to use the BBS download capabilities, download
  34.    ratio checking, security, etc.
  35.  
  36.    The solution was to have the user choose what files he/she wants
  37.    off of the CD-ROM, and have them transferred into ONE or more CD-ROM
  38.    Transfer areas in the BBS for later downloading.  This adds one step
  39.    for the user to get CD-ROM files, but the users on my board seem
  40.    to like the doors... though nothing is ever perfect, and I am
  41.    always looking for ways to improve the door.
  42.  
  43.  
  44.    Flexibility
  45.  
  46.    This program allows for people to use pre-created modules to
  47.    access CD-ROMS and create their own.  Creating a new module is as
  48.    simple as creating a few text files... no programming involved.
  49.    It also allows one to access and search multiple CD-ROM's...
  50.    It is simple as creating combined lists for files and organizing
  51.    them... see Installation below for more details.
  52.  
  53.  
  54.    Local/Remote Use
  55.  
  56.    The program acts a little differently for local and remote use.
  57.    For local use, there is an added option, unpack cd file to a 
  58.    specified path.  The transfer option is also slightly different
  59.    for local use, a path is entered where remote users have no
  60.    choice, it is specified in the config file instead for BBS 
  61.    security.
  62.  
  63.    It also watches remote users time, gives a warning at five minutes and 
  64.    bumps him/her back into the BBS a two minutes.
  65.  
  66.  
  67.    Viewing Text Files
  68.  
  69.    ROMDOOR also lets local/remote users view text files that are
  70.    contained on the CD-ROM.  One nice thing about the package is when
  71.    you specify a file to look at, unpack or transfer, all you have to do
  72.    is give it the filename without having to know what subdirectory it
  73.    is on.  And some CD's have quite a few directories.
  74.  
  75.    Local/Remote archive file manipulation
  76.  
  77.    ROMDOOR also lets local/remote users view archive files by
  78.    executing the archive shell specified in the configuration file
  79.    (see config section below).
  80.  
  81. * Installation *
  82.  
  83.    There is one big factor that will determine how this thing is installed.
  84.    ROMDOOR was developed to allow people to create a "front end" to
  85.    search thru and extract files on a shareware type CD-ROM.  The factor
  86.    is whether you are creating a new CD door... or you are using one
  87.    someone else has already created.  I call each set of these CD-ROM specific
  88.    data files a "module".  If you have a module for the CD you want to access,
  89.    there should be virtually no installation or messing with the config
  90.    files unless you want to change how it was done.
  91.    
  92.    - Make sure ansi.sys or equivalent is in the config.sys file, for local
  93.      use.
  94.  
  95.    Quick Install for those using a precreated module
  96.  
  97.      o  Make a directory for the door
  98.      o  Uncompress the files of the module into that directory
  99.      o  Uncompress the files of romdoor into that directory
  100.  
  101.    Creating a new module
  102.  
  103.      o  Make a subdirectory for the door
  104.      o  Create description file for each area (should be supplied with CD)
  105.      o  Create database file list for romcopy (see romcopy.doc)
  106.      o  Create catalog file
  107.      o  Create config file  
  108.      o  Create/Modify other ansi/ascii support files
  109.      o  Create the batch file that BBS will invoke to start the door
  110.         (see Things NOT covered by the Door below)
  111.      o  Create a batch file for you (and possibly others) to run
  112.         locally
  113.  
  114.      Please, if you create a decent module, upload it to my BBS so I
  115.      can make it availible FREQable for all...
  116.  
  117.    Catalog File
  118.  
  119.    The catalog file is simply a list of the different file areas
  120.    availible.  Give it any format you like, as long as the areas
  121.    are labeled 1-whatever and are in the same order as the config
  122.    file AREA commands (see AREA below).  The system supports
  123.    ANSI/ASCII versions of the file, and the filename is specified
  124.    in the config file by the CATALOG statement.
  125.  
  126.  
  127. * Configuration File (Default of ANSIDOOR.CFG) *
  128.  
  129.    The configuration file contains setup info which differs from 
  130.    one BBS to the next.  The following items are need to be in the
  131.    config file:
  132.  
  133.       XFER_DEST D:\RA\CARRS
  134.       XFER_DESC D:\RA\CARRS\FILES.BBS
  135.       BBS_NAME "The Data Dungeon!"
  136.       AREA 001.cat  Communications
  137.       AREA 002.cat  Games
  138.       DECOMP_COMMAND "pkunzip -d "
  139.       CATALOG catalog
  140.       INTRO carrs
  141.       DEF_EXT .zip
  142.       CDROM_NAME "CARRS Bonanza"
  143.       ALL_FILES_LIST filelist.dat
  144.  
  145.    An explanation of each follows:
  146.  
  147.    XFER_DEST:   For Remote mode, this is the directory where users will
  148.                 transfer files from the CD to.
  149.  
  150.    XFER_DESC:   This is the file description list for the transfer directory.
  151.                 Many BBS packages support ASCII lists for the files
  152.                 in each different area (ex files.bbs).  ROMDOOR will
  153.                 add an entry for each file transfered from the CD.
  154.  
  155.    AREA:        This creates another area for the CD.  The first parameter 
  156.                 is the path to the files description list for that area, 
  157.                 and the rest of the line is the name of the area.  There should
  158.                 be one of these statements for every file area you want to
  159.                 have.  Since you can give a path to the file description, you 
  160.                 can use the one on the CD, or move it to your hard drive.  
  161.                 Moving it to your hard drive dramatically improves access
  162.                 time.
  163.  
  164.                 *** TIP:  You don't have to use the file "areas" that are
  165.                   on the CD.  If you don't like how things are arranged
  166.                   on the CD, split up the description files how you
  167.                   would like to see it done.  For example, if there are a 
  168.                   bunch of BASIC game descriptions in the Games directory of 
  169.                   your cd rom, you could make a new area called BASIC games, 
  170.                   and split the games file description into two description 
  171.                   files on your hard drive.
  172.  
  173.  
  174.    DECOMP_COMMAND:  The command to decompress a file.  The example given
  175.                     is pkzip, but you will want to use whatever is appropriate
  176.                     for that CD.  Only one type supported for now. 
  177.                     With the next release I would like to make it
  178.                     based on extension.
  179.  
  180.  
  181.    CATALOG:     The name of the catalog file.  If no extension is given, the
  182.                 door will look for <name>.ans if the person has ANSI,
  183.                 and then <name>.asc.  This is displayed when the user
  184.                 needs/wants to change file areas.
  185.  
  186.    INTRO:       The name of the intro file.  If no extension is given, the
  187.                 door will look for <name>.ans if the person has ANSI,
  188.                 and then <name>.asc.  This file is displayed when the door
  189.                 is first called.
  190.  
  191.    DEF_EXT:     This tells ROMDOOR what extension to default to when
  192.                 the user enters no extension on a transfer or unpack.
  193.  
  194.    DEF_TEXT_EXT: This tells ROMDOOR what extension to default to when
  195.                  the user enters no extension on a view text file.
  196.  
  197.    CDROM_NAME:  Yep, you guessed it.  Surround the name in quotes.
  198.    BBS_NAME:    Yep, you guessed it.  Surround the name in quotes.
  199.  
  200.    ALL_FILES_LIST:  This is the name and path to the database file
  201.                     containing a list of all the files for the CD rom and 
  202.                     where they are.  This is created with the
  203.                     MAKEDIR.EXE utility.
  204.  
  205.    TEMP_FILE: Temporary file created for various operations.  Make
  206.               this point to a VDISK if you have one setup.  Ex.
  207.               E:\TEMP.$$$  Note that this is the FULL filename,
  208.               not just the path.
  209.  
  210.    LOCAL_COMP_UTL:  Local compression utility.  This will get called
  211.                     when running in local mode and the user asks to
  212.                     view contents of a compressed file.  The
  213.                     filename will be passed to the utility.
  214.  
  215.    REMOTE_COMP_UTL: Remote compression utility.  Same as above... but
  216.                     the utility should work redirection.
  217.  
  218.    Comment lines are allowed in the config file and are identified
  219.    with a semicolon in the first column.
  220.  
  221.  
  222. * Command Line Switches *
  223.  
  224.    -A<n>   where <n> is 0 for ASCII mode and 1 for ANSI mode
  225.    -N<n>   where <n> is the users first name
  226.    -T<n>   where <n> is the amount of time left on system
  227.    -R<n>   where <n> is 0 for LOCAL (default) mode and 1 for REMOTE mode
  228.    -C<n>   where <n> is the name of the config file to use, if none is
  229.                         specified, ANSIDOOR.CFG is used as a default.
  230.    -D      debug mode.
  231.  
  232.    If you are calling this program from a Remote Access, you can do
  233.    something like (see RA docs for complete descriptions on command
  234.    line expansion macros):
  235.  
  236.      romdoor -A*G -T*T -N*N
  237.  
  238.  
  239.  
  240. * TEXT Support Files *
  241.  
  242.     HELP.ANS/ASC  This file is displayed when the user asks for help from
  243.                   the main menu.
  244.  
  245. FILESAVE.ANS/ASC  Displayed when user has transferred a file to the
  246.                   BBS for later download in the current door session.
  247.  
  248.  
  249. * Things NOT covered by the Door *
  250.  
  251.   CD Watchdogging...  Most want their system to recover from a
  252.    user hanging up, and this simply reboots the BBS if the carrier detect
  253.    signal from the modem desists.  I did not write it in to the door
  254.    due to the fact that today's FOSSIL's usally have it built in.  I
  255.    am trying BNU at the moment, and it has worked flawlessly.
  256.  
  257.   I/O Redirection...  Video output and keyboard input is done through the 
  258.    standard channels.  This works nicely for running it locally, but
  259.    when you want to allow a remote user to run it, all input/output
  260.    needs to be routed though the com port...  there are two ways
  261.    to do this.  The first way is to use the CTTY COM1 directive
  262.    before the execution of the door, and the CTTY CON after the
  263.    door executes.  I use a device driver called GATEWAY that allows
  264.    for simultaneous input/output locally AND through the COM port. 
  265.    Therefore, my batch file that starts the door looks like this:
  266.  
  267.        @echo off
  268.        break off
  269.        bnu /W=0+                          ; Turn Watchdogging ON
  270.        ctty gate1                         ; Redirect input/output
  271.        d:
  272.        cd \ra\rbbsbox                     ; Switch to the doors directory
  273.        romdoor -C %1 %2 %3 %4 %5 %6          ; Start the DOOR
  274.        ctty con                           ; Redirect input/output back
  275.        bnu /W=0-                          ; Turn Watchdogging OFF
  276.        cd \ra                             ; Switch back to the BBS dir
  277.  
  278.  
  279. * Future Enhancements *
  280.  
  281.   There are a TON of things I would like to add to this thing, but like
  282.   all projects, if I can't get the funding through my users,  I can't
  283.   justify putting much into the project, so please register!  Enhancements
  284.   I would like to see in this thing include:
  285.  
  286.     o   Chat while in remote mode
  287.     o   Direct downloading from within door
  288.     o   Transfer times for files
  289.  
  290.   If you think of something, let me know, and please Register!  Its
  291.   the only way I can justify spending more time on the door.
  292.  
  293.  
  294. * Registering *
  295.  
  296. Single site registration...
  297.  
  298.   You can use this door to drive a 1000 CD's, as long as it is on one
  299.   machine.  Please register one copy per machine @ 15$ a copy. 
  300.   Please let me know where you got the program, and what disk size
  301.   you would like (5 1/4" or 3 1/2").
  302.  
  303.   Registering provides me with a good reason to work on the project, and
  304.   provides you with the following:
  305.  
  306.    o   The latest version of ROMDOOR
  307.    o   Modules for ROMDOOR
  308.    o   Online support on the HSF BBS (see ad below)
  309.    o   No pause at the beginning of each run, text changed to
  310.         registered with your name/company name
  311.  
  312.    Send registration to:
  313.  
  314.      James Snowden
  315.      Helix Software Foundation
  316.      PO Box 693
  317.      Essex Junction, VT 05453
  318.      Attn: ROMDOOR
  319.  
  320.  
  321. CD ROM Producers...
  322.  
  323.   Please contact me!  I am ALWAYS willing to make a deal with people
  324.   creating the latest in CD technologies.
  325.  
  326. ┌┬──┬───────────────────────────┬──┬┐
  327. │├──┘   The Data Dungeon BBS!   └──┤│  
  328. ││          1-802-899-4988         ││        24 Hours,
  329. ││     Over 2 Gigabytes of Files!  ││        7 Days a Week,
  330. ││       6 Disk CD-ROM Player      ││        365 Days a Year!
  331. ││       14400 HST/V32 8-N-1       ││
  332. │├──┐      FidoNet 1:325/123    ┌──┤│
  333. └┴──┴───────────────────────────┴──┴┘
  334.  
  335.  
  336. * Disclaimer *
  337.  
  338.     There is no warranty, written or implied.  Helix Software
  339.  Foundataion is not responsible for any damage in the use or misuse
  340.  of this software and is distributed in an AS-IS state.  This does
  341.  NOT mean that I am uninterested in the enhancements you would like
  342.  to see,  please send them to me via FidoNet or via US Mail...
  343.  
  344.  
  345. Special thanks...  
  346.  
  347.     All the users on my system for their patience, Bob Hall and all
  348.     of other beta testers!
  349.